angular.module('FlowCharge.unit',[]);


//驗證數據服務
angular.module('FlowCharge.unit').provider('$vaild',function(){

  function isBlank(value){
    if(value.length==0){
      return true;
    }
    return false;
  }

  function isCard(value){
   return  value.replace(/\s/g, "").length==19?true:false;
  }
  function isMobile(value) {
            var validateReg = /^((\+?86)|(\(\+86\)))?1\d{10}$/;
            return validateReg.test(value);
        }

  function isCardNo(card)
  {
   // 身份证号码为15位或者18位，15位时全为数字，18位前17位为数字，最后一位是校验位，可能为数字或字符X
   var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
   if(reg.test(card) === false)
   {
       return false;
   }
   return true;
 }

 function equal(val1,val2){
   return val1==val2;
 }

  this.$get = function(){
      return {
          'isMobile':isMobile,
          'isBlank':isBlank,
          'isCardNo':isCardNo,
          'isCard':isCard,
          'equal':equal

      }

  }




})




angular.module('FlowCharge.unit').provider("$cookie",function(){

   this.$get = function(){
   function   getsec(str){
       var str1 = str.substring(1, str.length) * 1;
       var str2 = str.substring(0, 1);
       if (str2 == "s")
       {
           return str1 * 1000;
       } else if (str2 == "h")
       {
           return str1 * 60 * 60 * 1000;
       } else if (str2 == "d")
       {
           return str1 * 24 * 60 * 60 * 1000;
       }

     }



       return {
           get:function(name){

             var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
             if (arr = document.cookie.match(reg))
                 return unescape(arr[2]);
             else
                 return null;
           },
           set:function(name, value, time){
             var strsec = getsec(time);
             var exp = new Date();
             exp.setTime(exp.getTime() + strsec * 1);
             document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
           }

       };

   }

});
